1. Field of the Invention
Aspects of the present invention are directed to a method of identifying part numbers in an enterprise database and, more particularly, to a method of identifying exact, non-exact and further non-exact matches to part numbers in the enterprise database.
2. Description of the Background
Most businesses today manage their supply chain via the use of part numbers which control inventory, ordering, manufacturing, change control, life cycle management and product recalls. Many of these businesses generate their own customer part numbers to coincide with specific supplier part numbers. Both the customer and supplier part numbers are typically stored by the customer in an enterprise database.
Suppliers use electronic communication to inform the customer of a product change, a product discontinuance, a product recall, product pricing, etc. This electronic communication can contain a large number of part numbers to identify the parts that are relevant to the communication. Here, in order for the customer to determine whether or not any of the supplier part numbers are affected, some type of comparison between the received supplier part numbers and supplier part numbers in the enterprise database must be performed.
A problem exists, however, in that the customer may not always store the supplier's part number verbatim. As such, due to the potential mismatch of the supplier's part number and the customer's stored supplier part number, errors may occur in the comparison between the part numbers of the supplier's communication and the part number(s) stored in the customer's enterprise database.
As an example, supplier part numbers may contain characters which are insignificant to the customer and are not always contained in the supplier part number stored by the customer in the enterprise database. For example, a customer might store supplier part number LM393MX in their enterprise database while a supplier communication might reference supplier part number LM393MX-T. In this case, the “−T” represents the shipping method which might not be a concern for the customer.
In another example, a supplier part number may contain a special character (e.g. /or −) which is included in the supplier's electronic communication but not contained in the supplier part number stored in the customer's enterprise database. That is, a customer might store supplier part number M93C56-WM6 as M93C56WM6 in the enterprise database.
A further problem exists in that the supplier's communication may not even mention every part possessed by the customer that is affected by the issue in the communication. That is, the supplier's electronic communication may contain supplier part number STXC12389-PX while the customer's enterprise database contains part numbers STXC12389-PX as well as STXC12389-PY. Here, the supplier might have inadvertently left STXC12389-PY off of their communication list although it may be affected.
A potential solution for these problems includes manually scanning both lists for exact and potential matches. This solution is, in practice, time consuming and prone to human error. Another solution has been to truncate the set of supplier part numbers to do a search in the customer enterprise database based on the truncated part numbers. The drawbacks here are that the customer can potentially get a very large number of search results if the truncation is excessively severe. The large number of search result would then need to be further analyzed. Therefore, it may be seen that this solution is also time consuming and inefficient.
Yet another solution has been for the customer to search for exact supplier part number matches. Here, the solution ignores the fact that a supplier part number entered in the customer's enterprise database is not always exactly the same as the coinciding supplier part number received in the supplier communication. Moreover, the person performing the part number search might not even have a full understanding of the part number nomenclature used by the supplier and will, therefore, tend to make human errors in his/her data inputs.